package net.aiion.weave.spi.xml;

import java.util.Collection;

import net.aiion.weave.spi.xml.events.XmlEvent;

public interface XmlContext
{
    void setProperty(String aName, Object aValue);

    void removeProperty(String aName);

    Object getProperty(String aName);

    <T> T getProperty(String aName, Class<T> aType);

    XmlEvent getXmlEvent();

    XmlGenerator getXmlGenerator();

    void forwardXmlEvent(XmlEvent aXmlEvent);

    void forwardXmlEvents(Collection<XmlEvent> aXmlEvents);
}
